package day1009_2;


import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;

public class EmployeeDaoImpl {
    List<Employee>  list=new ArrayList();//集合： 存储所有员工
    public boolean  updateEmp(Employee e){
        Employee e2=selectById(e.getNo());//根据参数找员工
        if(e2!=null){//找到此员工了
            int index=list.indexOf(e2);//判断要修改的员工位置
            list.set(index,e);//用员工新数据将idnex位置的数据替换掉
            return true;
        }
        return false;
    }
    public static void main(String[] args) {
        EmployeeDaoImpl  dao=new EmployeeDaoImpl();
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入您要查询的员工编号：");
        String eno=sc.next();
        Employee rs=dao.selectById(eno);
        if(rs==null){
            System.out.println("您查询的员工不存在");
        }else{
            System.out.println("rs = " + rs.getName());
        }
    }
    EmployeeDaoImpl(){//构造方法：给集合中添加两个员工
        Employee  e1=new Employee("big21001","王佳杰");
        Employee  e2=new Employee("big21002","王杰");
        list.add(e1);  list.add(e2);
    }
    public  Employee selectById(String sid) {//根据员工编号查询员工是否在集合中  selectById(员工编号sid)
        Iterator<Employee>  ite=list.iterator();//1.用集合的iterator()获取迭代器对象
        while(ite.hasNext()){//2.判断迭代器的下一位是否有员工
            Employee e=ite.next();//3.通过迭代器从集合中获取一个员工
            if(sid  .equals(  e.getNo() )){//获取员工的编号和方法参数的编号是否相同
                System.out.println(" 根据职工编号找到了该员工! " );
                return e;//返回查询到的员工到main方法中
            }
        }
        return null;//如果while条件不满足(证明没找到员工)，则返回null到main方法中
    }
}
